﻿using Huirui.Cavan.Domain.Seedwork;
using System;
using System.Collections;

namespace Huirui.Cavan.Domain.MainBoundedContext.StockModule
{
	#region StockOutApplyDetail

	/// <summary>
	/// StockOutApplyDetail object for NHibernate mapped table 'StockOutApplyDetail'.
	/// </summary>
    [Serializable]
	public class StockOutApplyDetail : Persistent<long>
	{
		#region Member Variables
		
		protected int _number;
		protected string _description;
		protected Stock _stock;
		protected StockOutApply _stockOutApply;
		protected WareHouse _wareHouse;

		#endregion

		#region Constructors

		public StockOutApplyDetail() { }

		public StockOutApplyDetail( int number, string description, DateTime createDate, DateTime modifyDate, int editUser, byte[] version, Stock stock, StockOutApply stockOutApply, WareHouse wareHouse )
		{
			this._number = number;
			this._description = description;
			this._createDate = createDate;
			this._modifyDate = modifyDate;
			this._editUser = editUser;
			this._version = version;
			this._stock = stock;
			this._stockOutApply = stockOutApply;
			this._wareHouse = wareHouse;
		}

		#endregion

		#region Public Properties


		public virtual int Number
		{
			get { return _number; }
			set { _number = value; }
		}

		public virtual string Description
		{
			get { return _description; }
			set
			{
				_description = value;
			}
		}

		public virtual Stock Stock
		{
			get { return _stock; }
			set { _stock = value; }
		}

		public virtual StockOutApply StockOutApply
		{
			get { return _stockOutApply; }
			set { _stockOutApply = value; }
		}

		public virtual WareHouse WareHouse
		{
			get { return _wareHouse; }
			set { _wareHouse = value; }
		}

		

		#endregion
	}
	#endregion
}